//package com.quanshi.jingdian.controller;
//
//import java.util.*;
//import java.util.concurrent.ExecutorService;
//import java.util.concurrent.Executors;
//
//import com.github.pagehelper.PageHelper;
//import com.quanshi.common.core.page.PageDomain;
//import com.quanshi.common.core.page.TableSupport;
//import com.quanshi.common.utils.StringUtils;
//import com.quanshi.common.utils.sql.SqlUtil;
//import com.quanshi.jingdian.config.TCPSocketConfig;
//import com.quanshi.jingdian.domain.JdProduct;
//import com.quanshi.jingdian.domain.JdRelaying;
//import com.quanshi.jingdian.domain.JdStation;
//import com.quanshi.jingdian.domain.vo.*;
//import com.quanshi.jingdian.service.*;
//import com.quanshi.jingdian.utils.DateUtil;
//import com.quanshi.jingdian.utils.PortListener;
//import com.quanshi.jingdian.utils.RedisUtils;
//import lombok.extern.log4j.Log4j2;
//import lombok.extern.slf4j.Slf4j;
//import org.springframework.beans.BeanUtils;
//import org.springframework.security.access.prepost.PreAuthorize;
//import org.springframework.beans.factory.annotation.Autowired;
//import org.springframework.web.bind.annotation.GetMapping;
//import org.springframework.web.bind.annotation.PostMapping;
//import org.springframework.web.bind.annotation.PutMapping;
//import org.springframework.web.bind.annotation.DeleteMapping;
//import org.springframework.web.bind.annotation.PathVariable;
//import org.springframework.web.bind.annotation.RequestBody;
//import org.springframework.web.bind.annotation.RequestMapping;
//import org.springframework.web.bind.annotation.RestController;
//import com.quanshi.common.annotation.Log;
//import com.quanshi.common.core.controller.BaseController;
//import com.quanshi.common.core.domain.AjaxResult;
//import com.quanshi.common.enums.BusinessType;
//import com.quanshi.jingdian.domain.JdElectricity;
//import com.quanshi.common.utils.poi.ExcelUtil;
//import com.quanshi.common.core.page.TableDataInfo;
//
///**
// * 静电消除棒管理Controller
// *
// * @author quanshi
// * @date 2023-09-04
// */
//@Slf4j
//@RestController
//@RequestMapping("/jingdian/electricity")
//public class JdElectricityController extends BaseController
//{
//    @Autowired
//    private RedisUtils redisUtils;
//
//    private TCPSocketConfig tcpSocketConfig;
//
//    @Autowired
//    public void setTcpSocketConfig(TCPSocketConfig tcpSocketConfig) {
//        this.tcpSocketConfig = tcpSocketConfig;
//    }
//
//    /**
//     * 新增设备
//     */
//    @PostMapping
//    public AjaxResult add(@RequestBody JdRelaying jdRelaying)
//    {
//        if(jdRelayingService.isPort(jdRelaying.getRelayingPort()))
//            return AjaxResult.error("端口已被使用");
//        int i = jdRelayingService.insertJdRelaying(jdRelaying);
//        if(i == 1)
//            //启动新的端口
//            tcpSocketConfig.portListenerManager().startPort(jdRelaying);
//        return toAjax(i);
//    }
//
//    /**
//     * 删除设备
//     */
//	@DeleteMapping("/{ids}")
//    public AjaxResult remove(@PathVariable Long[] ids)
//    {
//        for (Long id : ids) {
//            JdRelaying relaying = jdRelayingService.selectJdRelayingById(id);
//            //停止端口
//            tcpSocketConfig.portListenerManager().stopPort(relaying);
//        }
//        return toAjax(jdRelayingService.deleteJdRelayingByIds(ids));
//    }
//
//    /**
//     * 向设备发送修改指令
//     */
//    @PostMapping("/getListenerList")
//    public AjaxResult SetEquipmentData() {
//        tcpSocketConfig.portListenerManager().sendData(electricityUserVo);
//        return AjaxResult.success("指令发送成功");
//    }
//
//    /**
//     * 获取监控中的端口
//     */
//    @PostMapping("/getListenerList")
//    public AjaxResult getListenerList() {
//        List<PortListener> list = tcpSocketConfig.portListenerManager().getListenerList();
//        return AjaxResult.success("获取参数成功", list1);
//    }
//
//    /**
//     * 线程数据更新
//     */
//    @DeleteMapping("/{ids}")
//    public AjaxResult edit(@PathVariable Long[] ids)
//    {
//        for (Long id : ids) {
//            JdElectricity electricity = jdElectricityService.selectJdElectricityById(id);
//            redisUtils.deleteElectricityData(electricity.getSoleId());
//            tcpSocketConfig.portListenerManager().notifyListeners();
//        }
//        return toAjax(1);
//    }
//
//
//}
